home *** CD-ROM | disk | FTP | other *** search
- package asp.wizard;
-
- import asp.netobjects.nfx.util.ExceptionHandler;
- import asp.netobjects.nfx.util.ExternalError;
- import asp.netobjects.nfx.util.InternalError;
- import asp.netobjects.nfx.wizard.Wizard;
- import asp.netobjects.nfx.wizard.WizardPage;
- import asp.netobjects.nfx.wizard.WizardPageView;
- import asp.util.ResourceUtil;
- import asp.wizard.def.DefList;
- import asp.wizard.def.DefQuery;
- import asp.wizard.util.UiUtil;
- import com.sun.java.swing.DefaultListModel;
- import com.sun.java.swing.ImageIcon;
- import com.sun.java.swing.table.DefaultTableModel;
- import java.awt.Color;
- import java.awt.Font;
- import java.lang.reflect.Array;
- import java.util.Vector;
-
- public class WizardModelDbList2 extends WizardModelAbstract {
- private static final String OPT_FONTSIZE = "option.fontsize";
- private static final String OPT_COLOR = "option.color";
- private static final String[] _colorNames = new String[]{"black", "blue", "cyan", "darkGray", "green", "gray", "lightGray", "magenta", "orange", "pink", "red", "white", "yellow"};
- private static final Vector _realColors = new Vector();
- private static final Vector _fontSizeRel;
- private static final Vector _fontSizeExact;
- private boolean _firstLoad = true;
- private DefList _defList;
- private Vector _colors;
- private Vector _size;
- private boolean _previewed = false;
- private boolean _updatingTableParams = false;
- // $FF: synthetic field
- static Class class$asp$nfx$MSDBList$MSDBList;
-
- public WizardModelDbList2() {
- }
-
- public DefList getDefList() {
- return this._defList;
- }
-
- public void setDefList(DefList defList) {
- this._defList = defList;
- }
-
- public WizardModelDbList2(Wizard wizard, String bullet, String info, ImageIcon icon, ExceptionHandler handler) {
- super(wizard, bullet, info, icon, handler);
- }
-
- protected WizardPageView getViewSingleInstance() {
- return WizardViewDbList2.getInstance();
- }
-
- private DefQuery getDefQuery() {
- DefQuery result = null;
- WizardManager wm = ((WizardModelAbstract)this).getWizardManager();
- if (wm != null) {
- result = wm.getDefQuery(this);
- } else {
- System.err.println("WizardManager not found");
- }
-
- return result;
- }
-
- public void clearPreview() {
- ((WizardViewDbList2)((WizardPage)this).getView()).clearPreview();
- }
-
- protected void updatePreview() {
- if (!this._updatingTableParams) {
- this.clearPreview();
- WizardViewDbList2 view = (WizardViewDbList2)((WizardPage)this).getView();
- DefaultTableModel tmPreview = (DefaultTableModel)view.getPreviewTableModel();
- tmPreview.setNumRows(0);
- DefQuery aDefQuery = this.getDefQuery();
- if (aDefQuery != null) {
- Vector firstRecord = aDefQuery.getFirstRecord();
- Object[] columnNames = this.getDefList().getFieldNames();
- Object[] columnTitles = this.getDefList().getFieldLabels();
- if (columnNames == null) {
- return;
- }
-
- String faceFont = "Times New Roman";
- String dataFont = "Times New Roman";
-
- try {
- faceFont = view.getHeaderFace();
- dataFont = view.getDataFace();
- } catch (Exception e) {
- AspWizardExceptionHandler.showMessage(0, ((Throwable)e).getMessage());
- return;
- }
-
- DefaultListModel fields = new DefaultListModel();
- if (aDefQuery != null) {
- fields.setSize(0);
-
- try {
- WizDbManager.getFields(aDefQuery, false, fields);
- } catch (EWizDbManager e) {
- AspWizardExceptionHandler.showMessage(0, ((Throwable)e).getMessage());
- }
- }
-
- int columnCount = columnNames != null ? Array.getLength(columnNames) : 0;
- int i = 0;
- Object[] firstRow = new Object[columnCount];
- Object[][] rows = new Object[2][];
-
- for(int var22 = 1; var22 <= columnCount; ++var22) {
- firstRow[var22 - 1] = firstRecord.elementAt(fields.indexOf(columnNames[var22 - 1]));
- }
-
- rows[0] = columnTitles;
- rows[1] = firstRow;
- tmPreview.setDataVector(rows, columnNames);
- PreviewCellRenderer rndr = view.getPreviewTableCellRenderer();
- Font font = this.specToFont(faceFont, view.getHeaderSize(), view.getHeaderBold(), view.getHeaderItalic());
- Color color = (Color)_realColors.elementAt(view.getHeaderColor());
- boolean underline = view.getHeaderUnderline() != 1;
- rndr.setFirstRowTextAttributes(font, underline, color);
- font = this.specToFont(dataFont, view.getDataSize(), view.getDataBold(), view.getDataItalic());
- color = (Color)_realColors.elementAt(view.getDataColor());
- underline = view.getDataUnderline() != 1;
- rndr.setOtherRowTextAttributes(font, underline, color);
- view.adjustPreviewColumnWidths();
- this._previewed = true;
- }
-
- }
- }
-
- public String getColor(int colorIndex) {
- int maxCount = Array.getLength(_colorNames);
- String result = null;
- if (colorIndex >= 0 && colorIndex < maxCount) {
- result = _colorNames[colorIndex];
- }
-
- return result;
- }
-
- public String getSize(int myValue) {
- int maxCount = 7;
- String result = "";
- String[] myArray = new String[maxCount];
- if (myValue >= 0 && myValue < maxCount) {
- myArray[0] = "-2";
- myArray[1] = "-1";
- myArray[2] = "+0";
- myArray[3] = "+1";
- myArray[4] = "+2";
- myArray[5] = "+3";
- myArray[6] = "+4";
- result = myArray[myValue];
- }
-
- return result;
- }
-
- public void loadView() {
- WizardViewDbList2 view = (WizardViewDbList2)((WizardPage)this).getView();
- WizardManager WM = ((WizardModelAbstract)this).getWizardManager();
- this._defList = WM.getDefList(this);
- this._updatingTableParams = true;
- this.setupComboBoxes(view);
- if (this._defList != null) {
- view.setBorderSize(this._defList.getBorderSize());
- view.setCellPadding(this._defList.getCellPadding());
- view.setCellSpacing(this._defList.getCellSpacing());
- if (this._defList.getLabelFont() != null) {
- view.setHeaderFace(this._defList.getLabelFont());
- }
-
- view.setHeaderColor(this._defList.getLabelFontColor());
- view.setHeaderSize(this._defList.getLabelFontSize());
- view.setHeaderBold(this._defList.getLabelBold());
- view.setHeaderItalic(this._defList.getLabelItalic());
- view.setHeaderUnderline(this._defList.getLabelUnderline());
- if (this._defList.getDataFont() != null) {
- view.setDataFace(this._defList.getDataFont());
- }
-
- view.setDataColor(this._defList.getDataFontColor());
- view.setDataSize(this._defList.getDataFontSize());
- view.setDataBold(this._defList.getDataBold());
- view.setDataItalic(this._defList.getDataItalic());
- view.setDataUnderline(this._defList.getDataUnderline());
- }
-
- if (this._previewed) {
- this.updatePreview();
- } else {
- this.clearPreview();
- }
-
- this._updatingTableParams = false;
- }
-
- private String mapToJavaFontName(String fontName) {
- String result = "Helvetica";
- String upperFontName = fontName.toUpperCase();
- if (upperFontName.startsWith("ARIAL")) {
- result = "Helvetica";
- } else if (upperFontName.startsWith("TIMES")) {
- result = "TimesRoman";
- } else if (upperFontName.equals("MS SANS SERIF")) {
- result = "TimesRoman";
- } else if (upperFontName.equals("MS SERIF")) {
- result = "Helvetica";
- } else if (upperFontName.equals("COURIER")) {
- result = "Courier";
- } else if (upperFontName.equals("WINGDINGS")) {
- result = "ZapfDingBats";
- }
-
- return result;
- }
-
- private Font specToFont(String fontName, int sizeIndex, int isBold, int isItalic) {
- int style = 0;
- if (isBold != 1) {
- style |= 1;
- }
-
- if (isItalic != 1) {
- style |= 2;
- }
-
- fontName = this.mapToJavaFontName(fontName);
- int fontSize = 10;
- if (_fontSizeExact.elementAt(sizeIndex) != null) {
- fontSize = (Integer)_fontSizeExact.elementAt(sizeIndex);
- }
-
- return new Font(fontName, style, fontSize);
- }
-
- public Vector getColors() {
- return this._colors;
- }
-
- public Vector getSizes() {
- return this._size;
- }
-
- public void commit() throws InternalError, ExternalError {
- WizardViewDbList2 view = (WizardViewDbList2)((WizardPage)this).getView();
- if (this._defList == null) {
- this._defList = new DefList();
- ((WizardModelAbstract)this).getDefPage().addElement(this._defList);
- }
-
- this._defList.setBorderSize(view.getBorderSize());
- this._defList.setCellSpacing(view.getCellSpacing());
- this._defList.setCellPadding(view.getCellPadding());
- this._defList.setLabelFont(view.getHeaderFace());
- this._defList.setLabelFontColor(view.getHeaderColor());
- this._defList.setLabelFontSize(view.getHeaderSize());
- this._defList.setLabelBold(view.getHeaderBold());
- this._defList.setLabelItalic(view.getHeaderItalic());
- this._defList.setLabelUnderline(view.getHeaderUnderline());
- this._defList.setDataFont(view.getDataFace());
- this._defList.setDataFontSize(view.getDataSize());
- this._defList.setDataFontColor(view.getDataColor());
- this._defList.setDataBold(view.getDataBold());
- this._defList.setDataUnderline(view.getDataUnderline());
- this._defList.setDataItalic(view.getDataItalic());
- }
-
- public void validate() throws InternalError, ExternalError {
- super.validate();
- WizardViewDbList2 view = (WizardViewDbList2)((WizardPage)this).getView();
-
- try {
- view.getBorderSize();
- view.getCellSpacing();
- view.getCellPadding();
- view.getHeaderFace();
- view.getDataFace();
- } catch (Exception e) {
- throw new ExternalError(((Throwable)e).getMessage());
- }
- }
-
- public void setupComboBoxes(WizardViewDbList2 view) {
- String colors = ResourceUtil.getResourceString("asp.nfx.res", class$asp$nfx$MSDBList$MSDBList != null ? class$asp$nfx$MSDBList$MSDBList : (class$asp$nfx$MSDBList$MSDBList = class$("asp.nfx.MSDBList.MSDBList")), "option.color");
- String size = ResourceUtil.getResourceString("asp.nfx.res", class$asp$nfx$MSDBList$MSDBList != null ? class$asp$nfx$MSDBList$MSDBList : (class$asp$nfx$MSDBList$MSDBList = class$("asp.nfx.MSDBList.MSDBList")), "option.fontsize");
- view.setColors(UiUtil.strToVector(colors));
- view.setSize(UiUtil.strToVector(size));
- }
-
- public boolean isPreviewed() {
- return this._previewed;
- }
-
- // $FF: synthetic method
- static Class class$(String class$) {
- try {
- return Class.forName(class$);
- } catch (ClassNotFoundException forName) {
- throw new NoClassDefFoundError(((Throwable)forName).getMessage());
- }
- }
-
- static {
- _realColors.addElement(Color.black);
- _realColors.addElement(Color.blue);
- _realColors.addElement(Color.cyan);
- _realColors.addElement(Color.darkGray);
- _realColors.addElement(Color.green);
- _realColors.addElement(Color.gray);
- _realColors.addElement(Color.lightGray);
- _realColors.addElement(Color.magenta);
- _realColors.addElement(Color.orange);
- _realColors.addElement(Color.pink);
- _realColors.addElement(Color.red);
- _realColors.addElement(Color.white);
- _realColors.addElement(Color.yellow);
- _fontSizeRel = new Vector();
- _fontSizeRel.addElement("-2");
- _fontSizeRel.addElement("-1");
- _fontSizeRel.addElement("+0");
- _fontSizeRel.addElement("+1");
- _fontSizeRel.addElement("+2");
- _fontSizeRel.addElement("+3");
- _fontSizeRel.addElement("+4");
- _fontSizeExact = new Vector();
- _fontSizeExact.addElement(new Integer(8));
- _fontSizeExact.addElement(new Integer(10));
- _fontSizeExact.addElement(new Integer(12));
- _fontSizeExact.addElement(new Integer(14));
- _fontSizeExact.addElement(new Integer(18));
- _fontSizeExact.addElement(new Integer(24));
- _fontSizeExact.addElement(new Integer(36));
- }
- }
-